package com.hds.modules.app.entity.wx.po;

/**
 * 统一下单业务层请求数据类
 * 需要业务层传过来的数据，以后根据实际需求进行扩展
 * @version 1.0
 */
public class UnifiedOrder {

    /**
     * 【非必填】
     * 系统业务号
     * 内部使用
     */
    private String businessNo;

    /**
     * 【必填】
     * 公众账号ID
     */
    private String appid;

    /**
     * 【必填】
     * 用户标识
     * trade_type=JSAPI，此参数必传，用户在商户appid下的唯一标识
     */
    private String openid;

    /**
     * 【必填】
     * 商品描述
     * 商品或支付单简要描述
     */
    private String body;

    /**
     * 【必填】
     * 商户订单号
     */
    private String out_trade_no;

    /**
     * 【必填】
     * 总金额
     * 单位：分
     */
    private String total_fee;

    /**
     * 【必填】
     * 终端IP
     * APP和网页支付提交用户端ip，Native支付填调用微信支付API的机器IP。
     */
    private String spbill_create_ip;

    /**
     * 【非必填】
     * 商品详情
     * 商品名称明细列表
     */
    private String detail;

    /**
     * 【非必填】
     * 附加数据
     * 附加数据，在查询API和支付通知中原样返回，
     * 该字段主要用于商户携带订单的自定义数据
     */
    private String attach;

    /**
     * 【非必填】
     * 交易起始时间
     * 订单生成时间，格式为yyyyMMddHHmms
     */
    private String time_start;

    /**
     * 【非必填】
     * 交易结束时间
     * 订单失效时间，格式为yyyyMMddHHmms
     */
    private String time_expire;

    /**
     * 【非必填】
     * 商品标记
     * 商品标记，代金券或立减优惠功能的参数
     */
    private String goods_tag;

    /**
     * 【非必填】
     * 商品ID
     * trade_type=NATIVE，此参数必传。此id为二维码中包含的商品ID，
     * 商户自行定义
     */
    private String product_id;

    /**
     * 【非必填】
     * 设备号
     * 终端设备号(游戏wap支付此字段必传)
     */
    private String device_info;


    public String getAppid() {
        return appid;
    }

    public void setAppid(String appid) {
        this.appid = appid;
    }

    public String getBody() {
        return body;
    }

    public void setBody(String body) {
        this.body = body;
    }

    public String getDetail() {
        return detail;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    public String getAttach() {
        return attach;
    }

    public void setAttach(String attach) {
        this.attach = attach;
    }

    public String getOut_trade_no() {
        return out_trade_no;
    }

    public void setOut_trade_no(String out_trade_no) {
        this.out_trade_no = out_trade_no;
    }

    public String getTotal_fee() {
        return total_fee;
    }

    public void setTotal_fee(String total_fee) {
        this.total_fee = total_fee;
    }

    public String getSpbill_create_ip() {
        return spbill_create_ip;
    }

    public void setSpbill_create_ip(String spbill_create_ip) {
        this.spbill_create_ip = spbill_create_ip;
    }

    public String getTime_start() {
        return time_start;
    }

    public void setTime_start(String time_start) {
        this.time_start = time_start;
    }

    public String getTime_expire() {
        return time_expire;
    }

    public void setTime_expire(String time_expire) {
        this.time_expire = time_expire;
    }

    public String getGoods_tag() {
        return goods_tag;
    }

    public void setGoods_tag(String goods_tag) {
        this.goods_tag = goods_tag;
    }

    public String getProduct_id() {
        return product_id;
    }

    public void setProduct_id(String product_id) {
        this.product_id = product_id;
    }

    public String getOpenid() {
        return openid;
    }

    public void setOpenid(String openid) {
        this.openid = openid;
    }

    public String getDevice_info() {
        return device_info;
    }

    public void setDevice_info(String device_info) {
        this.device_info = device_info;
    }

    public void setBusinessNo(String businessNo) {
        this.businessNo = businessNo;
    }

    public String getBusinessNo() {
        return businessNo;
    }

}